// pages/order_list/main.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    tabs: ["全部", "待付款", "已付款", "退货/退款"],
    currentTab:0,
    orders:[],
    changeOrders:[],
    status:0,
  },

  // 绑定点击事件
  handleChange(event){
    console.log(event);

    const {index} = event.currentTarget.dataset;

    // 订单支付状态
    let status = 0;
    // 用来存在全部的订单，但是需要在点击全部按钮的时候
    let changeOrders;
    // 判断点击的是哪个按钮
    if(index == 1) {
      status = 0;
    }else if(index == 2){
      status = 1;
    }else{
      changeOrders = this.data.orders;
    }
    // 根据status和订单支付状态返回对应的订单
    const newOrders = this.data.orders.filter(v => {
      return v.pay_status == status;
    })

    this.setData({
      currentTab:index,
      // 先判断是否有全部订单，如果没有去有状态的订单
      changeOrders: changeOrders || newOrders,
    });
  },

  onLoad(query){
    console.log(query)
    this.setData({
      // 保存从个人中心页跳转过来订单状态
      status: query.status || 0
    })

  //  当前的tab栏索引
  let tab = 0;
  switch(+query.status){
    case 999: tab = 0;break;
    case 0: tab = 1; break;
    case 1: tab = 2; break;
    default: tab = 0;
  }
  console.log(tab)
  this.setData({
    // 重新设置tab栏
    currentTab: tab
  });

    // 请求订单列表数据
    wx.request({
      url: 'https://www.itjustfun.cn/api/public/v1/my/orders/all',
      data:{
        type: this.data.currentTab + 1,
      },
      header: {
        Authorization: wx.getStorageSync("token")
      },
      success: res =>{
        // console.log(res);
        const {data} = res.data;

        // 设置订单列表
        this.setData({
          orders: data,
          changeOrders:data,
        })

        // 调用列表分类
        this.getOrders();
      }
    })
  },

  // 处理支付
  handlePay(event){
    console.log(event);
    const {number} = event.currentTarget.dataset;
    wx.request({
      url: 'https://www.itjustfun.cn/api/public/v1/my/orders/req_unifiedorder',
      data:{
        order_number:number,
      },
      method:"POST",
      header:{
        Authorization: wx.getStorageSync("token"),
      },
      success: res =>{
        console.log(res);
        // 调用微信支付窗口
        const {wxorder} = res.data.data;
        wx.requestPayment(wxorder);
      }
    })

  },

  // 请求完成就分类订单列表
  getOrders(){
    let changeOrders;
    const {status} = this.data;
    
    // 全部的订单
    if (status != 0 && status != 1) {
      changeOrders = this.data.orders;
    }

    // 根据status和订单支付状态返回对应的订单
    const newOrders = this.data.orders.filter(v => {
      return v.pay_status == status;
    })

    this.setData({
      // 先判断是否有全部订单，如果没有去有状态的订单
      changeOrders: changeOrders || newOrders,
    });
  }
  
})